﻿using Hotel.Common;
using Hotel.IServices.RequestDTO;
using Hotel.IServices.ResponseDTO;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Hotel.IServices
{
    public interface IRBACServices
    {
        Task<ApiResult<bool>> RegisterAsync(RegisterAsyncReqDto dto);

        //角色下拉框
        Task<ApiResult<List<ShowRoleAsyncReqDto>>> ShowRoleAsync();


        //显示用户列表
        Task<ApiResult<PagingResult<IList<ShowUserAsyncReqDto>>>> ShowUserAsync(UserAsyncPageReqDto dto);

        //根据用户编号查询数据
        Task<ApiResult<GetUserInfoAsyncReqDto>> GetUserInfoAsync(int userid);

        //修改
        Task<ApiResult<bool>> UpDateUserInfoRegisterAsync(UpDateUserInfoRegisterAsyncReqDto dto);

        //添加角色
        Task<ApiResult> AddRoleAsync(AddRoleAsyncReqDto dto);

        //获取角色权限列表
        Task<ApiResult<List<TreeReqDto>>> GetPermissionListAsync();

        Task<ApiResult<List<GetMenuListYserIdAsyncReqDto>>> GetMenuListYserIdAsync(int userid);
    }
}
